﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class Decoder
   | Titanium Web Proxy </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class Decoder
   | Titanium Web Proxy ">
    <meta name="generator" content="docfx 2.40.1.0">
    
    <link rel="shortcut icon" href="../favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="">
    <meta property="docfx:tocrel" content="toc.html">
    
    <meta property="docfx:rel" content="../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../logo.svg" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder">
  
  
  <h1 id="Titanium_Web_Proxy_Http2_Hpack_Decoder" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder" class="text-break">Class Decoder
  </h1>
  <div class="markdown level0 summary"></div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></div>
    <div class="level1"><span class="xref">Decoder</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.equals#System_Object_Equals_System_Object_">Object.Equals(Object)</a>
    </div>
    <div>
      <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.equals#System_Object_Equals_System_Object_System_Object_">Object.Equals(Object, Object)</a>
    </div>
    <div>
      <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.gethashcode#System_Object_GetHashCode">Object.GetHashCode()</a>
    </div>
    <div>
      <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.gettype#System_Object_GetType">Object.GetType()</a>
    </div>
    <div>
      <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.memberwiseclone#System_Object_MemberwiseClone">Object.MemberwiseClone()</a>
    </div>
    <div>
      <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.referenceequals#System_Object_ReferenceEquals_System_Object_System_Object_">Object.ReferenceEquals(Object, Object)</a>
    </div>
    <div>
      <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.tostring#System_Object_ToString">Object.ToString()</a>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Titanium.Web.Proxy.Http2.Hpack.html">Titanium.Web.Proxy.Http2.Hpack</a></h6>
  <h6><strong>Assembly</strong>: Titanium.Web.Proxy.dll</h6>
  <h5 id="Titanium_Web_Proxy_Http2_Hpack_Decoder_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class Decoder</code></pre>
  </div>
  <h3 id="constructors">Constructors
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/new/master/apiSpec/new?filename=Titanium_Web_Proxy_Http2_Hpack_Decoder__ctor_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http2.Hpack.Decoder.%23ctor(System.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/blob/master/src/Titanium.Web.Proxy/Http2/Hpack/Decoder.cs/#L65">View Source</a>
  </span>
  <a id="Titanium_Web_Proxy_Http2_Hpack_Decoder__ctor_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.#ctor*"></a>
  <h4 id="Titanium_Web_Proxy_Http2_Hpack_Decoder__ctor_System_Int32_System_Int32_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.#ctor(System.Int32,System.Int32)">Decoder(Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Titanium.Web.Proxy.Http2.Hpack.Decoder.html">Decoder</a> class.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Decoder(int maxHeaderSize, int maxHeaderTableSize)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.int32">Int32</a></td>
        <td><span class="parametername">maxHeaderSize</span></td>
        <td><p>Max header size.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.int32">Int32</a></td>
        <td><span class="parametername">maxHeaderTableSize</span></td>
        <td><p>Max header table size.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/new/master/apiSpec/new?filename=Titanium_Web_Proxy_Http2_Hpack_Decoder_Decode_System_IO_BinaryReader_Titanium_Web_Proxy_Http2_Hpack_IHeaderListener_.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http2.Hpack.Decoder.Decode(System.IO.BinaryReader%2CTitanium.Web.Proxy.Http2.Hpack.IHeaderListener)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/blob/master/src/Titanium.Web.Proxy/Http2/Hpack/Decoder.cs/#L87">View Source</a>
  </span>
  <a id="Titanium_Web_Proxy_Http2_Hpack_Decoder_Decode_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.Decode*"></a>
  <h4 id="Titanium_Web_Proxy_Http2_Hpack_Decoder_Decode_System_IO_BinaryReader_Titanium_Web_Proxy_Http2_Hpack_IHeaderListener_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.Decode(System.IO.BinaryReader,Titanium.Web.Proxy.Http2.Hpack.IHeaderListener)">Decode(BinaryReader, IHeaderListener)</h4>
  <div class="markdown level1 summary"><p>Decode the header block into header fields.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public void Decode(BinaryReader input, IHeaderListener headerListener)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.io.binaryreader">BinaryReader</a></td>
        <td><span class="parametername">input</span></td>
        <td><p>Input.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="Titanium.Web.Proxy.Http2.Hpack.IHeaderListener.html">IHeaderListener</a></td>
        <td><span class="parametername">headerListener</span></td>
        <td><p>Header listener.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/new/master/apiSpec/new?filename=Titanium_Web_Proxy_Http2_Hpack_Decoder_EndHeaderBlock.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http2.Hpack.Decoder.EndHeaderBlock%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/blob/master/src/Titanium.Web.Proxy/Http2/Hpack/Decoder.cs/#L468">View Source</a>
  </span>
  <a id="Titanium_Web_Proxy_Http2_Hpack_Decoder_EndHeaderBlock_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.EndHeaderBlock*"></a>
  <h4 id="Titanium_Web_Proxy_Http2_Hpack_Decoder_EndHeaderBlock" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.EndHeaderBlock">EndHeaderBlock()</h4>
  <div class="markdown level1 summary"><p>End the current header block. Returns if the header field has been truncated.
This must be called after the header block has been completely decoded.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool EndHeaderBlock()</code></pre>
  </div>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.boolean">Boolean</a></td>
        <td><p><code>true</code>, if header block was ended, <code>false</code> otherwise.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/new/master/apiSpec/new?filename=Titanium_Web_Proxy_Http2_Hpack_Decoder_GetMaxHeaderTableSize.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http2.Hpack.Decoder.GetMaxHeaderTableSize%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/blob/master/src/Titanium.Web.Proxy/Http2/Hpack/Decoder.cs/#L498">View Source</a>
  </span>
  <a id="Titanium_Web_Proxy_Http2_Hpack_Decoder_GetMaxHeaderTableSize_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.GetMaxHeaderTableSize*"></a>
  <h4 id="Titanium_Web_Proxy_Http2_Hpack_Decoder_GetMaxHeaderTableSize" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.GetMaxHeaderTableSize">GetMaxHeaderTableSize()</h4>
  <div class="markdown level1 summary"><p>Return the maximum table size.
This is the maximum size allowed by both the encoder and the decoder.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int GetMaxHeaderTableSize()</code></pre>
  </div>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.int32">Int32</a></td>
        <td><p>The max header table size.</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/new/master/apiSpec/new?filename=Titanium_Web_Proxy_Http2_Hpack_Decoder_SetMaxHeaderTableSize_System_Int32_.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http2.Hpack.Decoder.SetMaxHeaderTableSize(System.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/blob/master/src/Titanium.Web.Proxy/Http2/Hpack/Decoder.cs/#L481">View Source</a>
  </span>
  <a id="Titanium_Web_Proxy_Http2_Hpack_Decoder_SetMaxHeaderTableSize_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.SetMaxHeaderTableSize*"></a>
  <h4 id="Titanium_Web_Proxy_Http2_Hpack_Decoder_SetMaxHeaderTableSize_System_Int32_" data-uid="Titanium.Web.Proxy.Http2.Hpack.Decoder.SetMaxHeaderTableSize(System.Int32)">SetMaxHeaderTableSize(Int32)</h4>
  <div class="markdown level1 summary"><p>Set the maximum table size.
If this is below the maximum size of the dynamic table used by the encoder,
the beginning of the next header block MUST signal this change.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public void SetMaxHeaderTableSize(int maxHeaderTableSize)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.int32">Int32</a></td>
        <td><span class="parametername">maxHeaderTableSize</span></td>
        <td><p>Max header table size.</p>
</td>
      </tr>
    </tbody>
  </table>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/new/master/apiSpec/new?filename=Titanium_Web_Proxy_Http2_Hpack_Decoder.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http2.Hpack.Decoder%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/justcoding121/Titanium-Web-Proxy/blob/master/src/Titanium.Web.Proxy/Http2/Hpack/Decoder.cs/#L25" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            
            <span>Generated by <strong>DocFX</strong></span>
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
